#============================================
# orm中如何定义三种关系
# publish = models. ForeignKey(to= 'Publish') # 默认就是与出版社表的主键字
# 段做外键关联
# I
# authors = models .ManyToManyField( to= ' Author')
# author_ detail = models . OneToOneField (to= ' AuthorDetail' )
# ForeignKey
# OneToOneField
# 会自动在字段后面加_ id后缀
# #在djangol . x版本中外键默认都是级联更新删除的
# #多对多的表关系可以有好几种创建方式这里暂且先介绍一-种
# #针对外键字段里面的其他参数暂时不要考虑如果感兴趣自己可以百度试试看
#============================================
#创建表关系先将基表创建出来 然后再添加外键字段
# class Book (models .Model) :
# title = models. CharF ield(max_ length=32)
# price = models . Dec imalField(max_ digits=8 , decimal_ places=2 )
# #总共八位小数点后面占两位
# 图书和出版社是一对多并且书是多的一-方所以外键字段放在书表里面
# publish = models . ForeignKey(to= ' Publish') # 默认就是与出版社表的主键字
# 段做外键关联
# 如果字段对应的是ForeignKey那么会orm会自动在字段的后面加_ id
# 如果你自作聪明的加了_ id那么orm还是 会在后面继续加id
# 后面在定义ForeignKey的时候就不要自己加_ id
# 图书和作者是多对多的关系外键字段建在任意一方均可但是推荐你建在查询频率较高的一方
# authors = models . ManyToManyField(to= ' Author')
# authors是一个虚拟字段主要是用来告诉orm书籍表和作者表是多对多关系
# 让orm自动帮你创建第三张关系表

# class Publish(models . Model) :
# name = models . CharField (max_ length=32)
# addr = models . CharField (max_ length=32)

# class Author (models . Model) :
# name = models . CharField (max_ length=32 )
# age = models . IntegerField( ) 
# 作者与作者详情是一-对一的关系外键字段建在任意一方 都可以但是推荐你建在查询频率较
# 高的表中
# author_ detail = models . OneToOneField(to= ' AuthorDetail' )
# OneTooneField也会自动给字段加_ id后缀
# 所以你也不要自作聪明的自己加_ id 

# class AuthorDetail (models . Model) :
# phone = models . BigIntegerField() # 或者直接字符类型
# addr = models . CharField (max_ length=32)


